
<html><head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta content="text/javascript" http-equiv="content-script-type">
<title>system.collections.ArrayList</title>
<link rel="stylesheet" type="text/css" href="candydoc/style.css">
<!--[if lt IE 7]><link rel="stylesheet" type="text/css" href="candydoc/ie56hack.css"><![endif]-->
<script language="JavaScript" src="candydoc/util.js" type="text/javascript"></script>
<script language="JavaScript" src="candydoc/tree.js" type="text/javascript"></script>
<script language="JavaScript" src="candydoc/explorer.js" type="text/javascript"></script>
</head><body>
<div id="tabarea"></div><div id="explorerclient"></div>
<div id="content"><script>explorer.initialize("system.collections.ArrayList");</script>
	<table class="content">
		<tr><td id="docbody"><h1>system.collections.ArrayList</h1><!-- Generated by Ddoc from F:\MyWork\phoenix\source\system\collections\ArrayList.d -->
动态可调整大小的
<span class="currsymbol">ArrayList</span>
<script>explorer.outline.addDecl('ArrayList');</script>


<br><br>
<b>License:</b><br>
BSD
<br><br>
<b>Authors:</b><br>
Lucifer (786325481@QQ.com)
<br><br>


<script>explorer.outline.incSymbolLevel();</script>
<dl>
<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">class 
<span class="currsymbol">ArrayList</span>
<script>explorer.outline.addDecl('ArrayList');</script>

(T): IList!(T), ICollection!(T), IEnumerable!(T);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>表示可通过索引访问的对象的强类型列表。
 提供用于对列表进行搜索、排序和操作的方法。
<br><br>
<b>Comments:</b><br>
该类使用大小可按需动态增加的数组实现 IList(T) 泛型接口。
 		该类既使用相等比较器又使用排序比较器。
 		该类不保证是排序的。
 		在执行要求已排序的操作（例如BinarySearch）之前，您必须对其进行排序。
 
<br><br>


<script>explorer.outline.incSymbolLevel();</script>
<dl>
<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">this();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>初始化 ArrayList(T) 类的新实例，该实例为空并且具有指定的初始容量。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">this(int capacity);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>初始化ArrayList(T)类的实例，该实例为空并且具有指定的初始容量。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">capacity</td>

               
<td>新列表最初可以存储的元素数。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 的容量是 ArrayList(T) 可以容纳的元素数。当向 ArrayList(T) 中添加元素时，将通过重新分配内部数组来根据需要自动增大容量。
           如果可以估计集合的大小，那么当指定初始容量后，将无需在向 ArrayList(T) 中添加元素时执行大量的大小调整操作。
           可通过调用 trimExcess 方法或通过显式设置 capacity 属性减少容量。减少容量会重新分配内存并复制 ArrayList(T) 中的所有元素。
           此构造函数的运算复杂度为 O(n)，其中 n 是 capacity。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">this(IEnumerable!(T) collection);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>初始化 ArrayList(T) 类的新实例，该实例包含从指定集合复制的元素并且具有足够的容量来容纳所复制的元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">collection</td>

               
<td>一个集合，其元素被复制到新列表中。</td></tr>
</table><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>获取能够容纳的元素总数。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

(int <span class="funcparam">newSize</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>设置能够容纳的元素总数。
<br><br>
<b>Throws:</b><br>
ArgumentOutOfRangeException，当 <span class="funcparam">newSize</span> 小于 count 时。
<br><br>
<b>Comments:</b><br>

<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

 是 ArrayList(T) 在需要调整大小之前可以存储的元素数，count 则是 ArrayList(T) 中实际存储的元素数。
           
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

 总是大于或等于 count。如果在添加元素时 count 超过 
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

，
           则通过在复制旧元素和添加新元素之前自动重新分配内部数组来使容量增加。
           可通过调用 trimExcess 方法或通过显式设置 
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

 属性减少容量。如果 
<span class="currsymbol">capacity</span>
<script>explorer.outline.addDecl('capacity');</script>

 的值是显式设置的，
           则内部数组也需要重新分配以容纳指定的容量，并且需要复制所有元素。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">isEmpty</span>
<script>explorer.outline.addDecl('isEmpty');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>查看 ArrayList(T) 是否为空。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">add</span>
<script>explorer.outline.addDecl('add');</script>

(T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将对象添加到 ArrayList(T) 的结尾处。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要添加到 ArrayList(T) 的末尾处的对象。
               对于引用类型，该值可以为 <b>null</b>。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 接受 <b>null</b> 作为引用类型的有效值并且允许有重复的元素。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">count</span>
<script>explorer.outline.addDecl('count');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>获取 ArrayList(T) 中实际包含的元素数。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">toArray</span>
<script>explorer.outline.addDecl('toArray');</script>

(T[] <span class="funcparam">array</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将整个 ArrayList(T) 复制到兼容的一维数组中。
<br><br>
<b>Comments:</b><br>
由于D数组的切片功能，这里可以指定数组的上下界限。
           此方法使用 Array.copy(T) 复制元素。
           元素按照枚举数循环访问 ArrayList(T) 的顺序复制到 <span class="funcparam">array</span> 中。
           此方法的时间复杂度为O(n)，其中 n 是 count 。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">toArray</span>
<script>explorer.outline.addDecl('toArray');</script>

(int <span class="funcparam">index</span>, T[] <span class="funcparam">array</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将一定范围的元素从 ArrayList(T) 复制到兼容的一维数组中。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>源 ArrayList(T) 中复制开始位置的从零开始的索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">T[] <span class="funcparam">array</span></td>

               
<td>作为从 ArrayList(T) 复制的元素的目标位置的一维数组。</td></tr>
</table><br>
<b>Comments:</b><br>
由于D数组的切片功能，这里可以指定数组的上下界限。
           此方法使用 Array.copy(T) 复制元素。
           元素按照枚举数循环访问 ArrayList(T) 的顺序复制到 <span class="funcparam">array</span> 中。
           此方法的时间复杂度为O(n)，其中 n 是 count 。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">isReadOnly</span>
<script>explorer.outline.addDecl('isReadOnly');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>获取一个值，该值指示 ArrayList(T) 是否为只读。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">clear</span>
<script>explorer.outline.addDecl('clear');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>从 ArrayList(T) 中移除所有元素。
<br><br>
<b>Comments:</b><br>
count 被设置为 0，并且对来自该集合的元素的其他对象的引用也被释放。
           capacity 保持不变。若要重置 ArrayList(T) 的容量，请调用 trimExcess 方法或直接设置 capacity 属性。
           减小容量会重新分配内存并复制 ArrayList(T) 中的所有元素。
           此方法的时间复杂度为O(n)，其中 n 是 count 。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">remove</span>
<script>explorer.outline.addDecl('remove');</script>

(T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>从 ArrayList(T) 中移除特定对象的第一个匹配项。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要从 ArrayList(T) 中移除的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
</table><br>
<b>Returns:</b><br>
如果成功移除 <span class="funcparam">item</span>，则为 <b>true</b>；否则为 <b>false</b>。
          如果在 ArrayList(T) 中没有找到 <span class="funcparam">item</span>，该方法也会返回 <b>false</b>。
<br><br>
<b>Comments:</b><br>
此方法使用用于 T（列表中的值的类型）的默认相等比较器 DefaultEqualityComparer(T) 来确定相等性。
           此方法执行线性搜索；因此，此方法的运算复杂度为 O(n)，其中 n 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">contains</span>
<script>explorer.outline.addDecl('contains');</script>

(T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>确定某元素是否在 ArrayList(T) 中。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要在 ArrayList(T) 中定位的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
</table><br>
<b>Returns:</b><br>
如果在 ArrayList(T) 中找到 <span class="funcparam">item</span>，则为 <b>true</b>，否则为 <b>false</b>。
<br><br>
<b>Comments:</b><br>
此方法使用用于 T（列表中的值的类型）的默认相等比较器 DefaultEqualityComparer(T) 来确定相等性。
           此方法执行线性搜索；因此，此方法的运算复杂度为 O(n)，其中 n 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">T 
<span class="currsymbol">opIndex</span>
<script>explorer.outline.addDecl('opIndex');</script>

(int <span class="funcparam">index</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>获取指定索引处的元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要获得的元素从零开始的索引。
         索引值必须小于 count 。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 接受 <b>null</b> 作为引用类型的有效值并且允许有重复的元素。
           通过使用下面的语法，此属性提供了访问集合中特定元素的能力：list[<span class="funcparam">index</span>]。
           检索此属性值的运算复杂度为 O(1)；
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">opIndexAssign</span>
<script>explorer.outline.addDecl('opIndexAssign');</script>

(T <span class="funcparam">item</span>, int <span class="funcparam">index</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>设置指定索引处的元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要获得的元素从零开始的索引。
         索引值必须小于 count 。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要设置的元素值。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 接受 <b>null</b> 作为引用类型的有效值并且允许有重复的元素。
           通过使用下面的语法，此属性提供了设置集合中特定元素的能力：list[<span class="funcparam">index</span>] = <span class="funcparam">item</span>。
           设置此属性值的运算复杂度为 O(1)；
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">indexOf</span>
<script>explorer.outline.addDecl('indexOf');</script>

(T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索指定的对象，并返回整个 ArrayList(T) 中第一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要在 ArrayList(T) 中定位的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
</table><br>
<b>Returns:</b><br>
如果在整个 ArrayList(T) 中找到 <span class="funcparam">item</span> 的第一个匹配项，则为该项的从零开始的索引；否则为 -1。
<br><br>
<b>Comments:</b><br>
从 ArrayList(T) 的第一个元素开始向前搜索，到最后一个元素停止搜索。
			 此方法使用用于 T（列表中的值的类型）的默认相等比较器 DefaultEqualityComparer(T) 来确定相等性。
           此方法执行线性搜索；因此，此方法的运算复杂度为 O(n)，其中 n 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">indexOf</span>
<script>explorer.outline.addDecl('indexOf');</script>

(T <span class="funcparam">item</span>, int <span class="funcparam">index</span>, int <span class="funcparam">count</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索指定的对象，并返回 ArrayList(T) 中从指定索引开始并包含指定的元素数的元素范围内第一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要在 ArrayList(T) 中定位的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>从零开始的搜索的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要搜索的部分中的元素数。</td></tr>
</table><br>
<b>Returns:</b><br>
如果在搜索范围内找到 <span class="funcparam">item</span> 的第一个匹配项，则为该项的从零开始的索引；否则为 -1。
<br><br>
<b>Comments:</b><br>
如果 <span class="funcparam">count</span> 大于 0，则在 ArrayList(T) 中向前搜索，从 <span class="funcparam">index</span> 处开始，到 <span class="funcparam">index</span> + <span class="funcparam">count</span> - 1 处结束。
           此方法使用用于 T（列表中的值的类型）的默认相等比较器 DefaultEqualityComparer(T) 来确定相等性。
           此方法执行线性搜索；因此，此方法的运算复杂度为 O(n)，其中 n 是 <span class="funcparam">count</span>。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">indexOf</span>
<script>explorer.outline.addDecl('indexOf');</script>

(T <span class="funcparam">item</span>, int <span class="funcparam">index</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索指定的对象，并返回 ArrayList(T) 中从指定索引到最后一个元素的元素范围内第一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要在 ArrayList(T) 中定位的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>从零开始的搜索的起始索引。</td></tr>
</table><br>
<b>Returns:</b><br>
如果在搜索范围内找到 <span class="funcparam">item</span> 的第一个匹配项，则为该项的从零开始的索引；否则为 -1。
<br><br>
<b>Comments:</b><br>
如果 count 大于 0，则在 ArrayList(T) 中从 <span class="funcparam">index</span> 开始向前搜索，到最后一个元素停止搜索。
           此方法使用用于 T（列表中的值的类型）的默认相等比较器 DefaultEqualityComparer(T) 来确定相等性。
           此方法执行线性搜索；因此，此方法的运算复杂度为 O(n)，其中 n 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">insert</span>
<script>explorer.outline.addDecl('insert');</script>

(int <span class="funcparam">index</span>, T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将元素插入 ArrayList(T) 的指定索引处。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>从零开始的索引，应在该位置插入 <span class="funcparam">item</span>。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要插入的对象。对于引用类型，该值可以为 <b>null</b> 。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 接受 <b>null</b> 作为引用类型的有效值并且允许有重复的元素。
           如果 count 已经等于 capacity，则在添加新元素之前，
           会通过自动重新分配内部数组来增加 ArrayList(T) 的容量并会将现有元素复制到新数组中。
           如果 <span class="funcparam">index</span> 等于 count，则将 <span class="funcparam">item</span> 添加到 ArrayList(T) 的结尾处。
           此方法的运算复杂度为 O(n)，其中 n 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">removeAt</span>
<script>explorer.outline.addDecl('removeAt');</script>

(int <span class="funcparam">index</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>移除 ArrayList(T) 指定索引处的元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要移除的元素的从零开始的索引。</td></tr>
</table><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">Enumerator 
<span class="currsymbol">getEnumerator</span>
<script>explorer.outline.addDecl('getEnumerator');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>返回循环访问 ArrayList(T) 的枚举数。
<br><br>
<b>Comments:</b><br>
D 语言的 foreach 语句隐藏了枚举数的复杂性。
           因此，建议使用 foreach，而不直接操作枚举数。
           枚举数可用于读取集合中的数据，但不能用于修改基础集合。
<br><br>

           最初，枚举数定位在集合中第一个元素前。在此位置上，current 属性未定义。
           因此，在读取 current 的值之前，必须调用 moveNext 方法将枚举数提前到集合的第一个元素。
<br><br>

           在调用 moveNext 之前，current 属性始终返回同一个对象。moveNext 将 current 设置为下一个元素。
<br><br>

           如果 moveNext 越过集合的结尾，则枚举数将被放置在此集合中最后一个元素的后面，且 moveNext 将返回 <b>false</b>。
           当枚举数位于此位置时，对 moveNext 的后续调用也返回 <b>false</b>。如果对 moveNext 的最近一次调用返回 <b>false</b>，
           则说明没有定义 current。无法再次为集合的第一个元素设置 current；必须改为新建枚举数实例。
<br><br>

           只要集合保持不变，枚举数就保持有效。如果对集合进行更改（如添加、修改或删除元素），
           则枚举数将失效且不可恢复，而且其行为是不确定的。
<br><br>

           枚举数没有对集合的独占访问权；因此，从头到尾对一个集合进行枚举在本质上不是一个线程安全的过程。
           若要确保枚举过程中的线程安全，可以在整个枚举过程中锁定集合。
           若要允许多个线程访问集合以进行读写操作，则必须实现自己的同步。
<br><br>

           system.collections 包中的集合默认实现不同步。
<br><br>

           此方法的运算复杂度是 O(1)。
<br><br>

	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">opApply</span>
<script>explorer.outline.addDecl('opApply');</script>

(int delegate(ref T) <span class="funcparam">dg</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>为 ArrayList(T) 实现 foreach 语句。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">class 
<span class="currsymbol">Enumerator</span>
<script>explorer.outline.addDecl('Enumerator');</script>

: IEnumerator!(T);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd><b>Throws:</b><br>
InvalidOperationException，当在遍历对象时修改了集合。
     
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">insertRange</span>
<script>explorer.outline.addDecl('insertRange');</script>

(int <span class="funcparam">index</span>, IEnumerable!(T) <span class="funcparam">collection</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将集合中的某个元素插入 ArrayList(T) 的指定索引处。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>应在此处插入新元素的从零开始的索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">IEnumerable!(T) <span class="funcparam">collection</span></td>

               
<td>一个集合，应将其元素插入到 ArrayList(T) 中。集合自身不能为 <b>null</b> ，但它可以包含为 <b>null</b> 的元素（如果类型 T 为引用类型）。</td></tr>
</table><br>
<b>Comments:</b><br>
ArrayList(T) 中会保留集合中元素的顺序。
           此方法的运算复杂度为 O(n + m)，其中 n 是要添加的元素数，m 是 count。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">addRange</span>
<script>explorer.outline.addDecl('addRange');</script>

(IEnumerable!(T) <span class="funcparam">collection</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将指定集合的元素添加到 ArrayList(T) 的末尾。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">IEnumerable!(T) <span class="funcparam">collection</span></td>

               
<td>一个集合，应将其元素插入到 ArrayList(T) 中。集合自身不能为 <b>null</b> ，但它可以包含为 <b>null</b> 的元素（如果类型 T 为引用类型）。</td></tr>
</table><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">ReadOnlyListCollection!(T) 
<span class="currsymbol">asReadOnly</span>
<script>explorer.outline.addDecl('asReadOnly');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>返回当前集合的只读 IList(T) 包装。
<br><br>
<b>Returns:</b><br>
作为当前 ArrayList(T) 周围的只读包装的 ReadOnlyListCollection(T)。
<br><br>
<b>Comments:</b><br>
若要防止对 ArrayList(T) 的任何修改，应该仅通过此包装公开 ArrayList(T)。
           只读集合只是一个具有用于防止修改的包装的集合；因此，如果更改基础集合，则只读集合将反映那些更改。
           此方法的运算复杂度是 O(1)。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">binarySearch</span>
<script>explorer.outline.addDecl('binarySearch');</script>

(T <span class="funcparam">item</span>, IComparer!(T) <span class="funcparam">comparer</span> = null);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>使用指定的比较器在整个已排序的 ArrayList(T) 中折半搜索元素，并返回该元素从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要定位的对象。对于引用类型，该值可以为 <b>null</b>。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">IComparer!(T) <span class="funcparam">comparer</span></td>

               
<td>比较元素时要使用的 IComparer(T) 实现。
         			   或
                     为 <b>null</b> 以使用默认比较器 DefaultComparer(T)。</td></tr>
</table><br>
<b>Returns:</b><br>
如果找到 <span class="funcparam">item</span>，则为 ArrayList(T) 中的指定 <span class="funcparam">item</span> 的索引。
          如果找不到 <span class="funcparam">item</span>，且 <span class="funcparam">item</span> 小于 ArrayList(T) 内任何元素值时，返回 ArrayList(T) 内第一个大于 <span class="funcparam">item</span> 的元素索引值的按位求反值。
          如果找不到 <span class="funcparam">item</span> ，且 <span class="funcparam">item</span> 大于 ArrayList(T) 内任何元素值时，返回 ArrayList(T) 内最后一个元素索引值的按位求反值。
          如果 count 为 0 ，则返回 -1 。
<br><br>
<b>Throws:</b><br>
InvalidOperationException, 当 value 没有正确实现 opCmp 时
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">binarySearch</span>
<script>explorer.outline.addDecl('binarySearch');</script>

(int <span class="funcparam">index</span>, int <span class="funcparam">count</span>, T <span class="funcparam">item</span>, IComparer!(T) <span class="funcparam">comparer</span> = null);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>使用指定的比较器在整个已排序的 ArrayList(T) 指定范围内折半搜索元素，并返回该元素从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要搜索的范围从零开始的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要搜索的范围的长度。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要定位的对象。对于引用类型，该值可以为 <b>null</b>。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">IComparer!(T) <span class="funcparam">comparer</span></td>

               
<td>比较元素时要使用的 IComparer(T) 实现。
         			   或
                     为 <b>null</b> 以使用默认比较器 DefaultComparer(T)。</td></tr>
</table><br>
<b>Returns:</b><br>
如果找到 <span class="funcparam">item</span>，则为 ArrayList(T) 中的指定 <span class="funcparam">item</span> 的索引。
          如果找不到 <span class="funcparam">item</span>，且 <span class="funcparam">item</span> 小于 ArrayList(T) 指定范围内任何元素值时，返回 ArrayList(T) 指定范围内第一个大于 <span class="funcparam">item</span> 的元素索引值的按位求反值。
          如果找不到 <span class="funcparam">item</span> ，且 <span class="funcparam">item</span> 大于 ArrayList(T) 指定范围内任何元素值时，返回 ArrayList(T) 指定范围内最后一个元素索引值的按位求反值。
          如果 <span class="funcparam">count</span> 为 0 ，则返回 -1 。
<br><br>
<b>Throws:</b><br>
InvalidOperationException, 当 value 没有正确实现 opCmp 时
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">template 
<span class="currsymbol">convertAll</span>
<script>explorer.outline.addDecl('convertAll');</script>

(TOutput)<br>template 
<span class="currsymbol">convertAll</span>
<script>explorer.outline.addDecl('convertAll');</script>

(TOutput)</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将当前 ArrayList(T) 中的元素转换为另一种类型，并返回包含转换后的元素的列表。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">converter</td>

               
<td>将每个元素从一种类型转换为另一种类型的委托。</td></tr>
</table><br>
<b>Returns:</b><br>
目标类型的 ArrayList(T)，其中包含当前 ArrayList(T) 中的转换后的元素。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(int <span class="funcparam">startIndex</span>, int <span class="funcparam">count</span>, bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(int <span class="funcparam">startIndex</span>, int <span class="funcparam">count</span>, bool function(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(int <span class="funcparam">startIndex</span>, bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(int <span class="funcparam">startIndex</span>, bool function(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findIndex</span>
<script>explorer.outline.addDecl('findIndex');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索与指定谓词所定义的条件相匹配的一个元素，
 并返回 ArrayList(T) 中从指定的元素范围内第一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">startIndex</span></td>

               
<td>从零开始的搜索的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要搜索的部分中的元素数。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">bool delegate(T) <span class="funcparam">match</span></td>

               
<td>用于定义要搜索的元素的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
如果找到与 <span class="funcparam">match</span> 定义的条件相匹配的第一个元素，则为该元素的从零开始的索引；否则为 -1。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">exists</span>
<script>explorer.outline.addDecl('exists');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>bool 
<span class="currsymbol">exists</span>
<script>explorer.outline.addDecl('exists');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>确定 ArrayList(T) 是否包含与指定谓词所定义的条件相匹配的元素。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">T 
<span class="currsymbol">find</span>
<script>explorer.outline.addDecl('find');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>T 
<span class="currsymbol">find</span>
<script>explorer.outline.addDecl('find');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索与指定谓词所定义的条件相匹配的元素，并返回整个 ArrayList(T) 中的第一个匹配元素。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">ArrayList!(T) 
<span class="currsymbol">findAll</span>
<script>explorer.outline.addDecl('findAll');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>ArrayList!(T) 
<span class="currsymbol">findAll</span>
<script>explorer.outline.addDecl('findAll');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>检索与指定谓词定义的条件匹配的所有元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">bool delegate(T) <span class="funcparam">match</span></td>

               
<td>用于定义要搜索的元素应满足的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
如果找到，则为一个 ArrayList(T)，其中包含与指定谓词所定义的条件相匹配的所有元素；
          否则为一个空 ArrayList(T)。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">T 
<span class="currsymbol">findLast</span>
<script>explorer.outline.addDecl('findLast');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>T 
<span class="currsymbol">findLast</span>
<script>explorer.outline.addDecl('findLast');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索与指定谓词所定义的条件相匹配的元素，并返回整个 ArrayList(T) 中的最后一个匹配元素。
<br><br>
<b>Returns:</b><br>
如果找到，则为与指定谓词所定义的条件相匹配的最后一个元素；否则为类型 T 的默认值。
<br><br>
<b>Comments:</b><br>
<b>重要说明:</b>
           当搜索包含值类型的列表时，请确保该类型的默认值不满足搜索谓词。
           否则，将无法区分是默认值指示没有找到匹配项，还是刚巧有一个列表元素具有该类型的默认值。
           如果默认值满足搜索谓词，请改用 findLastIndex 方法。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(int <span class="funcparam">startIndex</span>, int <span class="funcparam">count</span>, bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(int <span class="funcparam">startIndex</span>, int <span class="funcparam">count</span>, bool function(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(int <span class="funcparam">startIndex</span>, bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(int <span class="funcparam">startIndex</span>, bool function(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>int 
<span class="currsymbol">findLastIndex</span>
<script>explorer.outline.addDecl('findLastIndex');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索与指定谓词所定义的条件相匹配的元素，并返回 ArrayListList(T) 中指定元素范围内最后一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">startIndex</span></td>

               
<td>向后搜索的从零开始的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要搜索的部分中的元素数。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">bool delegate(T) <span class="funcparam">match</span></td>

               
<td>用于定义要搜索的元素的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
如果找到与 <span class="funcparam">match</span> 定义的条件相匹配的最后一个元素，则为该元素的从零开始的索引；否则为 -1。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">forEach</span>
<script>explorer.outline.addDecl('forEach');</script>

(void delegate(T) <span class="funcparam">action</span>);
<br>void 
<span class="currsymbol">forEach</span>
<script>explorer.outline.addDecl('forEach');</script>

(void function(T) <span class="funcparam">action</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>对 ArrayList(T) 的每个元素执行指定操作。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">ArrayList!(T) 
<span class="currsymbol">getRange</span>
<script>explorer.outline.addDecl('getRange');</script>

(int <span class="funcparam">index</span>, int <span class="funcparam">count</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>创建源 ArrayList(T) 中的元素范围的浅拷贝副本。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>从零开始的 ArrayList(T) 起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要拷贝的元素数。</td></tr>
</table><br>
<b>Comments:</b><br>
引用类型的集合或该集合的子集的浅拷贝副本仅包含对该集合的元素的引用。
           对象本身并未被复制。
           新列表中的引用与原始列表中的引用指向相同的对象。
<br><br>

           值类型的集合或该集合的子集的浅拷贝副本包含该集合的元素。
           但是，如果该集合的元素包含对其他对象的引用，则这些对象不会被复制。
           新集合中的元素中的引用与原始集合中的元素的引用指向相同的对象。
<br><br>

           与之相对，集合的深拷贝将复制这些元素以及由它们直接或间接引用的所有内容。
<br><br>

           此方法的运算复杂度为 O(n)，其中 n 是 <span class="funcparam">count</span>。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">lastIndexOf</span>
<script>explorer.outline.addDecl('lastIndexOf');</script>

(T <span class="funcparam">item</span>, int <span class="funcparam">index</span>, int <span class="funcparam">count</span>);
<br>int 
<span class="currsymbol">lastIndexOf</span>
<script>explorer.outline.addDecl('lastIndexOf');</script>

(T <span class="funcparam">item</span>, int <span class="funcparam">index</span>);
<br>int 
<span class="currsymbol">lastIndexOf</span>
<script>explorer.outline.addDecl('lastIndexOf');</script>

(T <span class="funcparam">item</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>搜索指定的对象，并返回 ArrayList(T) 指定的元素范围内最后一个匹配项的从零开始的索引。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">T <span class="funcparam">item</span></td>

               
<td>要在 ArrayList(T) 中定位的对象。对于引用类型，该值可以为 <b>null</b>。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>向后搜索的从零开始的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要搜索的指定范围内的元素数。</td></tr>
</table><br>
<b>Returns:</b><br>
如果在 ArrayListList(T) 指定的元素范围内找到 <span class="funcparam">item</span> 的最后一个匹配项，则为该项的从零开始的索引；
          否则为 -1。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">removeAll</span>
<script>explorer.outline.addDecl('removeAll');</script>

(bool delegate(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>移除与指定的谓词所定义的条件相匹配的所有元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">bool delegate(T) <span class="funcparam">match</span></td>

               
<td>用于定义要移除的元素应满足的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
从 ArrayList(T) 中移除的元素数目。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">int 
<span class="currsymbol">removeAll</span>
<script>explorer.outline.addDecl('removeAll');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>移除与指定的谓词所定义的条件相匹配的所有元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">bool function(T) <span class="funcparam">match</span></td>

               
<td>用于定义要移除的元素应满足的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
从 ArrayList(T) 中移除的元素数目。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">removeRange</span>
<script>explorer.outline.addDecl('removeRange');</script>

(int <span class="funcparam">index</span>, int <span class="funcparam">count</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>从 ArrayList(T) 中移除一定范围的元素。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要移除的元素的范围从零开始的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要移除的元素数。</td></tr>
</table><br>
<b>Comments:</b><br>
项被移除，ArrayList(T) 中在这些项之后的所有元素的索引都减小 <span class="funcparam">count</span>。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">reverse</span>
<script>explorer.outline.addDecl('reverse');</script>

(int <span class="funcparam">index</span>, int <span class="funcparam">count</span>);
<br>void 
<span class="currsymbol">reverse</span>
<script>explorer.outline.addDecl('reverse');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将 ArrayList(T) 指定范围内元素的顺序反转。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">sort</span>
<script>explorer.outline.addDecl('sort');</script>

(int <span class="funcparam">index</span>, int <span class="funcparam">count</span>, IComparer!(T) <span class="funcparam">comparer</span> = null);
<br>void 
<span class="currsymbol">sort</span>
<script>explorer.outline.addDecl('sort');</script>

(IComparer!(T) <span class="funcparam">comparer</span>);
<br>void 
<span class="currsymbol">sort</span>
<script>explorer.outline.addDecl('sort');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>使用指定的比较器对 ArrayList(T) 中某个范围内的元素进行排序。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">index</span></td>

               
<td>要排序的范围的从零开始的起始索引。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">int <span class="funcparam">count</span></td>

               
<td>要排序的范围的长度。</td></tr>
<tr>
<td nowrap valign="top" style="padding-right: 8px">IComparer!(T) <span class="funcparam">comparer</span></td>

               
<td>比较元素时要使用的 IComparer(T) 实现，或者为 <b>null</b>，表示使用默认比较器 DefaultComparer(T)。</td></tr>
</table><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">sort</span>
<script>explorer.outline.addDecl('sort');</script>

(int delegate(T, T) <span class="funcparam">comparison</span>);
<br>void 
<span class="currsymbol">sort</span>
<script>explorer.outline.addDecl('sort');</script>

(int function(T, T) <span class="funcparam">comparison</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>使用指定的比较委托对整个 ArrayList(T) 的元素进行排序。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">void 
<span class="currsymbol">trimExcess</span>
<script>explorer.outline.addDecl('trimExcess');</script>

();
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>将容量设置为 ArrayList(T) 中的实际元素数目（如果该数目小于某个阈值）。
<br><br>
<b>Comments:</b><br>
如果不向集合中添加新元素，则此方法可用于最小化集合的内存开销。
           但是，重新分配和复制很大的 ArrayList(T) 的开销可能很大，
           因此，如果列表大于容量的 90%，则 
<span class="currsymbol">trimExcess</span>
<script>explorer.outline.addDecl('trimExcess');</script>

 方法将不执行任何操作。
           这样可以避免为获得相对较少的收益而产生大量重新分配开销。
	 
<br><br>

</dd>

<script>explorer.outline.writeEnabled = true;</script>
<dt><span class="decl">bool 
<span class="currsymbol">trueForAll</span>
<script>explorer.outline.addDecl('trueForAll');</script>

(bool delegate(T) <span class="funcparam">match</span>);
<br>bool 
<span class="currsymbol">trueForAll</span>
<script>explorer.outline.addDecl('trueForAll');</script>

(bool function(T) <span class="funcparam">match</span>);
</span></dt>
<script>explorer.outline.writeEnabled = false;</script>


<dd>确定是否 ArrayList(T) 中的每个元素都与指定的谓词所定义的条件相匹配。
<br><br>
<b>Params:</b><br>
<table><tr>
<td nowrap valign="top" style="padding-right: 8px">bool delegate(T) <span class="funcparam">match</span></td>

               
<td>定义要据以检查元素的条件。</td></tr>
</table><br>
<b>Returns:</b><br>
如果 ArrayList(T) 中的每个元素都与指定的谓词所定义的条件相匹配，则为 <b>true</b>；否则为 <b>false</b>。
          如果列表不包含任何元素，则返回值为 <b>true</b>。
	 
<br><br>

</dd>
</dl>
<script>explorer.outline.decSymbolLevel();</script>


</dd>
</dl>
<script>explorer.outline.decSymbolLevel();</script>


</td></tr>
		<tr><td id="docfooter">
			Page was generated with
			<img src="candydoc/img/candydoc.gif" style="vertical-align:middle; position:relative; top:-1px">
			on Sat Nov 29 22:33:12 2008

		</td></tr>
	</table>
</div>
<script>
	explorer.packageExplorer.addModule("platform.PAL");
	explorer.packageExplorer.addModule("platform.windows.Core");
	explorer.packageExplorer.addModule("platform.linux.Core");
	explorer.packageExplorer.addModule("system.Array");
	explorer.packageExplorer.addModule("system.BitArray");
	explorer.packageExplorer.addModule("system.Environment");
	explorer.packageExplorer.addModule("system.Event");
	explorer.packageExplorer.addModule("system.Exception");
	explorer.packageExplorer.addModule("system.Hash");
	explorer.packageExplorer.addModule("system.IntPtr");
	explorer.packageExplorer.addModule("system.Random");
	explorer.packageExplorer.addModule("system.Traits");
	explorer.packageExplorer.addModule("system.TypeTuple");
	explorer.packageExplorer.addModule("system.math.IEEE");
	explorer.packageExplorer.addModule("system.math.Math");
	explorer.packageExplorer.addModule("system.runtime.c.complex");
	explorer.packageExplorer.addModule("system.runtime.c.config");
	explorer.packageExplorer.addModule("system.runtime.c.ctype");
	explorer.packageExplorer.addModule("system.runtime.c.errno");
	explorer.packageExplorer.addModule("system.runtime.c.fenv");
	explorer.packageExplorer.addModule("system.runtime.c.inttypes");
	explorer.packageExplorer.addModule("system.runtime.c.limits");
	explorer.packageExplorer.addModule("system.runtime.c.locale");
	explorer.packageExplorer.addModule("system.runtime.c.math");
	explorer.packageExplorer.addModule("system.runtime.c.signal");
	explorer.packageExplorer.addModule("system.runtime.c.stdarg");
	explorer.packageExplorer.addModule("system.runtime.c.stddef");
	explorer.packageExplorer.addModule("system.runtime.c.stdint");
	explorer.packageExplorer.addModule("system.runtime.c.stdio");
	explorer.packageExplorer.addModule("system.runtime.c.stdlib");
	explorer.packageExplorer.addModule("system.runtime.c.string");
	explorer.packageExplorer.addModule("system.runtime.c.time");
	explorer.packageExplorer.addModule("system.runtime.c.wctype");
	explorer.packageExplorer.addModule("system.text.UTF");
	explorer.packageExplorer.addModule("system.threading.Atomic");
	explorer.packageExplorer.addModule("system.threading.ThreadUtility");
	explorer.packageExplorer.addModule("system.threading.synchronization.SpinWait");
	explorer.packageExplorer.addModule("system.collections.ArrayList");
	explorer.packageExplorer.addModule("system.collections.Comparer");
	explorer.packageExplorer.addModule("system.collections.Deque");
	explorer.packageExplorer.addModule("system.collections.EqualityComparer");
	explorer.packageExplorer.addModule("system.collections.Exception");
	explorer.packageExplorer.addModule("system.collections.HashMap");
	explorer.packageExplorer.addModule("system.collections.HashSet");
	explorer.packageExplorer.addModule("system.collections.ICollection");
	explorer.packageExplorer.addModule("system.collections.IComparer");
	explorer.packageExplorer.addModule("system.collections.IDeque");
	explorer.packageExplorer.addModule("system.collections.IEnumerable");
	explorer.packageExplorer.addModule("system.collections.IEnumerator");
	explorer.packageExplorer.addModule("system.collections.IEqualityComparer");
	explorer.packageExplorer.addModule("system.collections.IList");
	explorer.packageExplorer.addModule("system.collections.IMap");
	explorer.packageExplorer.addModule("system.collections.IQueue");
	explorer.packageExplorer.addModule("system.collections.LinkedList");
	explorer.packageExplorer.addModule("system.collections.Pair");
	explorer.packageExplorer.addModule("system.collections.PrimeHelper");
	explorer.packageExplorer.addModule("system.collections.PriorityQueue");
	explorer.packageExplorer.addModule("system.collections.Queue");
	explorer.packageExplorer.addModule("system.collections.RBTree");
	explorer.packageExplorer.addModule("system.collections.Stack");
	explorer.packageExplorer.addModule("system.collections.TreeMap");
	explorer.packageExplorer.addModule("system.collections.TreeSet");
	explorer.packageExplorer.addModule("system.collections.objectmodel.ListCollection");
	explorer.packageExplorer.addModule("system.collections.objectmodel.ReadOnlyListCollection");</script>
</body></html>


